package com.genymobile.scrcpy.five.config.parser;

import android.os.Build;
import android.util.Log;

public class ParserFactory {
    /**
     * 获取 Android 大版本号，例如返回 9、10、11、12、13
     */
    public static int getMajorVersion() {
        switch (Build.VERSION.SDK_INT) {
            case 28: return 9;   // Android 9 Pie
            case 29: return 10;  // Android 10
            case 30: return 11;  // Android 11
            case 31: // fallthrough
            case 32: return 12;  // Android 12 / 12L
            case 33: return 13;  // Android 13
            case 34: return 14;  // Android 14
            default:
                // 新版本默认：SDK_INT - 21 (因为 Android 5.0 对应 API 21)
                return Build.VERSION.SDK_INT - 21 + 5;
        }
    }
    public static IDumpInputParser getParser() {
        int androidVersion = getMajorVersion();
        Log.d("InputDumpParser_ParserFactory", "androidVersion=" + androidVersion);
        switch (androidVersion) {
            case 12:
            case 13:
                return new InputDumpParser13();
        }
        return null;
    }
}
